package com.qk.controller;

import com.qk.common.Result;
import com.qk.utils.AliyunOSSOperator;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;

import java.util.UUID;


@Slf4j
@RestController
public class UploadController {

   /* @PostMapping("/upload")
    public Result upload(String username, Integer age, MultipartFile  file) throws Exception {
        log.info("{},{},{}", username, age, file);
       // 1.构造一个文件名(不能重复) --> 使用uuid:
        String fileName =file.getOriginalFilename(); //获取原始文件名 --> 后缀名
        String extName = fileName.substring(fileName.lastIndexOf(".")); // png
        String newFileName = UUID.randomUUID().toString() + extName;


        //1. 1.将文件保存到磁盘 --> 指定保存到哪个文件夹中
        file.transferTo(new File("D:\\images\\" +newFileName));
        return Result.success();
    }*/


    @Autowired
    private AliyunOSSOperator aliyunOSSOperator;
    /*
    文件上传
     */
    @PostMapping("/upload")
    public Result upload(MultipartFile image) throws Exception {
       log.info("文件上传:{}", image);

        String fileName =image.getOriginalFilename(); //获取原始文件名 --> 后缀名
        String extName = fileName.substring(fileName.lastIndexOf(".")); // png
        String newFileName = UUID.randomUUID().toString() + extName;

        String url = aliyunOSSOperator.upload(image.getBytes(), newFileName);
        return Result.success(url);

    }
}
